'\" te
.\" Copyright (c) 2004, Sun Microsystems Inc.  All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH IPGPC 4IPP "Sep 29, 2004"
.SH NAME
ipgpc \- IP Generic Packet Classifier
.SH DESCRIPTION
.sp
.LP
The IP Generic Packet Classifier (\fBipgpc\fR) module provides packet
classification at the Solaris IP layer. \fBipgpc\fR is an implementation of the
Multi-Field (MF) classifier as described in \fIRFC2475: An Architecture for
Differentiated Services\fR.
.sp
.LP
The classifier is configured, at startup or dynamically, using a set of
"filters." Filters describe selectors that are matched against input packets
that are processed by the classifier. Some selectors feature exact matching
data points, while others utilize non-exact or wildcard data points.
.sp
.LP
Each filter is associated with a class describing the next actions to process a
packet. There is a many-to-one (M-to-1) mapping relationship between filters
and a class. Additionally, each class is aware of which filters are associated
with it. A class is configured with a class name and a next action.
.sp
.LP
Unlike traditional classifiers used in edge routers, \fBipgpc\fR is designed
for a host or server device. A host-based classifier provides access to more
resources and data than edge routers. User, project, and interface information
are available at the host.
.SH STATISTICS
.sp
.LP
The \fBipgpc\fR module exports global and per-class statistics (available
through kstat:)
.sp
.LP
Global statistics:
.sp
.in +2
.nf
module: ipgpc                           instance:<action id>
name:   ipgpc global stats              class: <action name>
        crtime
        snaptime
        nbytes                          <number of classified bytes>
        nclasses                        <number of classes>
        nfilters                        <number of filters>
        npackets                        <number of classified packets>
        epackets                        <number of packets in error>
.fi
.in -2

.sp
.LP
Per-class statistics:
.sp
.in +2
.nf
module: ipgpc                           instance:<action id>
name:   <class name>                    class: <action name>
        crtime
        snaptime
        last match                      <time of last match>
        nbytes                          <number of classified bytes>
        npackets                        <number of classified packets>
.fi
.in -2

.SH FILES
.sp
.ne 2
.na
\fB\fB/kernel/ipp/sparcv9/ipgpc\fR\fR
.ad
.RS 29n
64-bit module (SPARC only.)
.RE

.SH SEE ALSO
.sp
.LP
.BR dlcosmk (4IPP),
.BR dscpmk (4IPP),
.BR flowacct (4IPP),
.BR ipqos (4IPP),
.BR tokenmt (4IPP),
.BR tswtclmt (4IPP),
.BR ipqosconf (8)
.sp
.LP
\fIRFC 2475, An Architecture for Differentiated Services\fR S. Blake, D. Black,
M. Carlson, E. Davies, Z. Wang, W. Weiss \(em The Internet Society, 1998
